home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Whiteline: delta
/
whiteline CD Series - delta.iso
/
progtool
/
modula2
/
module
/
popupmen.def
< prev
next >
Wrap
Text File
|
1995-11-25
|
4KB
|
77 lines
(******************************************************************************)
(* This MODULE is Public Domain. Copy me like a beast! *)
(* Christian Ledermann *)
(* Wölfelkofen 2 *)
(* 84166 Adlkofen *)
(******************************************************************************)
(* *)
(* Started: 20.12.92 03:54:30 *)
(* Version: 20.12.89 01:284:12:54 *)
(* *)
(******************************************************************************)
(* *)
(* Diese Software ist ohne jede Garantie. Ich verspreche *)
(* keinerlei Wartung und übernehme keine Verantwortung für Schäden die *)
(* durch die Benutzung dieses Programmes entstehen. *)
(* Jegliche Ersatzansprüche lehne ich ab. *)
(* *)
(******************************************************************************)
DEFINITION MODULE PopUpMenue;
FROM SYSTEM IMPORT ADDRESS;
(*********** Pop-Up Menüs *******************)
(* Ein PopUp Menü besteht wie ein normales Menü aus *)
(* einem "Kasten" in dem übereinander mehrere Text- *)
(* einträge stehen. Der Kasten ist das Vaterobjekt *)
(* und vom Typ GraphicBox, die Einträge sind die *)
(* Kinder und vom Typ GraphicString. Da dieses Pop-Up *)
(* wie ein normales Menü aussieht und auch so *)
(* funktioniert sollte man sich an die allgemeinen *)
(* Konvetionen halten, d.h. vor jedem Eintrag 2 Leer- *)
(* zeichen für das "Checked-Häkchen" freilassen und *)
(* am Ende ein Leerzeichen. Bei Bedarf sind Trenn- *)
(* striche und Eintäge vom Typ 'disabled String' *)
(* zulässig. Es hat sich eingebürgert das das Vater- *)
(* objekt (die GraphicBox) den Objectstate shadowed *)
(* hat, also schattiert ist. *)
(* Dieses MODULE baut nicht auf den betriebssystem- *)
(* eigenen Pop-Ups des AES 4.x auf und ist somit *)
(* auch auf älteren Rechnern einsetzbar. *)
(******************************************************)
PROCEDURE PopUp(x,y:INTEGER; PopTree:ADDRESS ) : INTEGER;
(*********** Pop-Up Menü zeichnen **********************)
(* Zeichnet an der Stelle x,y ein Pop-Up Menü auf den *)
(* Bildshirm. PopTree ist die ADDRESSe des Baumes des *)
(* Pop-Up Menüs, zu ermitteln mit: *)
(* AES.ResourceGetAddr(0,NummerDesMenüs,PopTree) *)
(* Rückgabe : Das Feld das zum Verlassen des Menüs *)
(* angeklickt wurde oder -1 falls ausserhalb des Menüs *)
(* die Maustaste betätigt wurde. *)
(* PopUp funktioniert mit allen TOS-Versionen ab 1.0 *)
(* Achtung! Diese Funktion ruft nicht selbständdig *)
(* WindowUpdate auf! Für daraus resultierenden Bild- *)
(* schirmmüll sind Sie selber verantwortlich! *)
(* Selbstverständlich können Shortcuts im RSC definiert*)
(* werden. Die Tastendrücke werden selbsttätig den *)
(* Menüeinträgen zugeordnet. *)
(*******************************************************)
(***************************************************************)
(* Einige PROCEDUREn die den Umgang mit den Pop-Up Menüs *)
(* so vereinfachen wie es von den 'normalen' Menüs gewohnt ist *)
(***************************************************************)
PROCEDURE PopUpMenuItemCheck(Tree : ADDRESS; Item :INTEGER; Check :BOOLEAN);
(* Display or erase a check mark next to a pop-up menu item *)
(* TRUE = checked, FALSE = NOT checked *)
PROCEDURE PopUpMenuItemEnable (Tree: ADDRESS; Item:INTEGER; Enable: BOOLEAN);
(* Enables or disables a pop-up menu item *)
(* TRUE = enable, FALSE= disable *)
END PopUpMenue.